package com.example.lotterysystem.dao.mapper;

import com.example.lotterysystem.dao.dataobject.ActivityDO;
import com.example.lotterysystem.dao.dataobject.PrizeDo;
import org.apache.ibatis.annotations.*;

import java.util.List;

@Mapper
public interface ActivityMapper {
    @Insert("insert into activity (activity_name, description, status)" +
            " values (#{activityName}, #{description} , #{status})")
    @Options(useGeneratedKeys = true, keyProperty = "id", keyColumn = "id")
    //用于处理数据库插入操作时自动生成主键
    int insert(ActivityDO activityDO);

    @Select("select count(*) from activity")
    int count();


    //从大到小(即最新的在最上面)
    @Select("select * from activity order by id desc limit #{offset}, #{pageSize}")
    List<ActivityDO> selectActivityList(@Param("offset") Integer offset,
                                  @Param("pageSize") Integer pageSize);

    @Select("select * from activity where id = #{id}")
    ActivityDO selectById(@Param("id") Long activityId);

    @Update("update activity set status = #{status} where id = #{id}")
    void updateStatus(@Param("id") Long id,
                      @Param("status") String status);
}
